package moxl.parser.assemblers.pi;

public enum ProcessingInstructionAssemblerState
{
	ProcessingInstructionStartState(new ProcessingInstructionStartState()),
	ProcessingInstructionEndState(new ProcessingInstructionEndState()), 
	ProcessingInstructionExpectingTargetState(new ProcessingInstructionExpectingTargetState()), 
	ProcessingInstructionExpectingBodyState(new ProcessingInstructionExpectingBodyState());
	
	public static final ProcessingInstructionAssemblerState START = ProcessingInstructionStartState;
	public static final ProcessingInstructionAssemblerState END = ProcessingInstructionEndState;

	private final ProcessingInstructionStateDelegateBase delegate;

	ProcessingInstructionAssemblerState(ProcessingInstructionStateDelegateBase delegate)
	{
		this.delegate = delegate;
	}

	public ProcessingInstructionStateDelegateBase getDelegate()
	{
		return delegate;
	}
}
